Software Development Plan
The Software Development Plan is a comprehensive, composite artifact which gathers all information required to manage the project. It encloses a number of artifacts developed during the Inception phase and is maintained throughout the project.
Worker: Project Manager
Template:
Examples:
More Information: Guidelines: Software Development Plan

Input to Activities: Output from Activities:

Purpose To top of page

The purpose of the Software Development Plan is to gather all the information necessary to control the project. It describes the approach to the development of the software and is the top-level plan generated and used by the managers to direct the development effort.

The following people use the Software Development Plan:

  • The project manager, to plan the project schedule and resource needs, and to track progress against the schedule.
  • Project team members, to understand what they need to do, when they need to do it, and what other activities they are dependent upon.

Brief Outline To top of page

(hyperlinks into HTML template in a new window)

1.          Introduction         
    1.1      Purpose     
    1.2      Scope     
    1.3      Definitions, Acronyms and Abbreviations     
    1.4      References     
    1.5      Overview     
2.          Project Overview      
    2.1      Project Purpose, Scope and Objectives     
    2.2      Assumptions and Constraints     
    2.3      Project Deliverables     
    2.4      Evolution of the Software Development Plan     
3.          Project Organization  
    3.1      Organizational Structure     
    3.2      External Interfaces     
    3.3      Roles and Responsibilities     
4.          Management Process
    4.1      Project Estimates     
    4.2      Project Plan     
        4.2.1       Phase Plan      
        4.2.2       Iteration Objectives
        4.2.3       Releases      
        4.2.4       Project Schedule 
        4.2.5       Project Resourcing      
              4.2.5.1       Staffing Plan      
              4.2.5.2       Resource Acquisition Plan      
              4.2.5.3       Training Plan      
        4.2.6       Budget      
    4.3      Iteration Plans     
    4.4      Project Monitoring and Control     
        4.4.1       Requirements Management Plan      
        4.4.2       Schedule Control Plan      
        4.4.3       Budget Control Plan      
        4.4.4       Quality Control Plan      
        4.4.5       Reporting Plan      
        4.4.6       Measurement Plan      
    4.5      Risk Management plan     
    4.6      Close-out Plan     
5.          Technical process plans 
    5.1      Development Case     
    5.2      Methods, Tools and Techniques     
    5.3      Infrastructure Plan     
    5.4      Product Acceptance Plan     
6.          Supporting Process Plans 
    6.1      Configuration Management Plan     
    6.2      Evaluation Plan     
    6.3      Documentation Plan     
    6.4      Quality Assurance Plan     
    6.5      Problem Resolution Plan     
    6.6      Subcontractor Management Plan     
    6.7      Process Improvement Plan     
7.          Additional Plans 
8.          Annexes 
9.          Index    

Enclosed Artifacts To top of page

Note that although the Rational Unified Process recognizes the possible need for an Infrastructure Plan, Documentation Plan, Sub-contractor Management Plan and Process Improvement Plan, they are currently outside the scope of the process, and no explicit guidance is provided for their creation or for their contents.

Timing To top of page

Developed during inception. Updated at each major milestone.

Responsibility To top of page

The Worker: Project Manager is responsible for compiling the enclosed documents and making sure the latest versions are kept available through the Software Development Plan.

Tailoring To top of page

There are situations when a standard is called out in a contract that stipulates the outline and contents of a Software Development Plan. In this case you would use that instead of the above proposed outline, but you should form a clear mapping of the information requirements of that standard to the outline above.

Additional Information To top of page

Good software development plans evolve. A useful Software Development Plan is periodically updated (it is not stagnant shelfware), and it is understood and embraced by managers and practitioners.

The Software Development Plan is the defining document for the project's process. Prepare a single Software Development Plan that:

  • Complies with organizational standards for content.
  • Complies with the contract (if any).
  • Provides traceability to, or waivers from, contract and organization requirements.
  • Is updated at each major milestone.
  • Evolves along with the design and requirements.

A standard format promotes:

  • Reuse of processes, methods, experience, and people.
  • Accountability for organizational expectations.
  • Homogeneous process objectives.

A key discriminator of good Software Development Plans is their conciseness, lack of philosophy, and focus on meaningful standards and procedures.

Copyright  ⌐ 1987 - 2000 Rational Software Corporation

Display Rational Unified Process using frames

Rational Unified Process